Security News
The Push to Ban Ransom Payments Is Gaining Momentum
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
writr
Advanced tools
Readme
React
or HTML
.> npm install writr
import { Writr } from 'writr';
const writr = new Writr();
const markdown = `# Hello World ::-):\n\n This is a test.`;
const html = await writr.render(markdown); // <h1>Hello World 🙂</h1><p>This is a test.</p>
Its just that simple. Want to add some options? No problem.
import { Writr } from 'writr';
const writr = new Writr();
const markdown = `# Hello World ::-):\n\n This is a test.`;
const options = {
emoji: false
}
const html = await writr.render(markdown, options); // <h1>Hello World ::-):</h1><p>This is a test.</p>
Want to render to a translation? No problem.
import { Writr } from 'writr';
const writr = new Writr({ openai: 'your-api-key'});
const markdown = `# Hello World ::-):\n\n This is a test.`;
const langCode = 'es';
const html = await writr.renderTranslation(markdown, langCode, options); // <h1>Hola Mundo 🙂</h1><p>Esta es una prueba.</p>
How about generating keywords and descriptions for your front matter?
import { Writr } from 'writr';
const writr = new Writr({ openai: 'your-api-key'});
const markdown = `# Hello World ::-):\n\n This is a test.`;
const keywords = await writr.keywords(markdown); // ['Hello World', 'Test']
const description = await writr.description(markdown); // 'Hello World Test'
new Writr(options?: WritrOptions)
You can access the WritrOptions
from the instance of Writr. Here is an example of WritrOptions.
import { Writr, WritrOptions } from 'writr';
const writrOptions = {
openai: 'your-api-key', // openai api key (default: undefined)
renderOptions: {
emoji: true,
toc: true,
slug: true,
highlight: true,
gfm: true,
math: true,
mdx: true
}
};
const writr = new Writr(writrOptions);
.engine
Accessing the underlying engine for this instance of Writr. This is a Processor<Root, Root, Root, undefined, undefined>
fromt the unified .use()
function. You can use this to add additional plugins to the engine.
.options
Accessing the default options for this instance of Writr.
.render(markdown: string, options?: RenderOptions): Promise<string>
Rendering markdown to HTML. the options are based on RenderOptions. Which you can access from the Writr instance.
import { Writr, RenderOptions } from 'writr';
## `RenderOptions`
```js
interface RenderOptions {
emoji?: boolean; // emoji support
toc?: boolean; // table of contents generation
slug?: boolean; // slug generation
highlight?: boolean; // code highlighting
gfm?: boolean; // github flavor markdown
}
.renderSync(markdown: string, options?: RenderOptions): string
Rendering markdown to HTML synchronously. the options are based on RenderOptions. Which you can access from the Writr instance. The parameters are the same as the .render()
function.
import { Writr } from 'writr';
const writr = new Writr();
const markdown = `# Hello World ::-):\n\n This is a test.`;
const html = writr.renderSync(markdown); // <h1>Hello World 🙂</h1><p>This is a test.</p>
Rendering markdown to React. The options are based on RenderOptions and now HTMLReactParserOptions from html-react-parser
.
import { Writr } from 'writr';
const writr = new Writr();
const markdown = `# Hello World ::-):\n\n This is a test.`;
const reactElement = await writr.renderReact(markdown); // Will return a React.JSX.Element
Rendering markdown to React. The options are based on RenderOptions and now HTMLReactParserOptions from html-react-parser
.
import { Writr } from 'writr';
const writr = new Writr();
const markdown = `# Hello World ::-):\n\n This is a test.`;
const reactElement = writr.renderReactSync(markdown); // Will return a React.JSX.Element
Code of Conduct and Contributing guidelines.
MIT © Jared Wray
FAQs
Markdown Rendering Simplified
The npm package writr receives a total of 40 weekly downloads. As such, writr popularity was classified as not popular.
We found that writr demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
Application Security
New SEC disclosure rules aim to enforce timely cyber incident reporting, but fear of job loss and inadequate resources lead to significant underreporting.
Security News
The Python Software Foundation has secured a 5-year sponsorship from Fastly that supports PSF's activities and events, most notably the security and reliability of the Python Package Index (PyPI).